package com.budwk.app.sqfw.dto;

import com.budwk.starter.common.openapi.annotation.ApiModelProperty;
import lombok.Data;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

@Data
@Table("shequ.sqfw_person_info")
public class PartyMemberInformation implements Serializable {
    @Column("id")
    @Name
    @ColDefine(type = ColType.VARCHAR, width = 50)
    @PrevInsert(els = {@EL("snowflake()")}, nullEffective = true)
    private String id;
    @ApiModelProperty(description = "姓名")
    @Column("name")
    private String name;
    @Column("age")
    private int age;
    @ApiModelProperty(description = "民族")
    @Comment("民族")
    @Column("nation")
    private String nation;
    @ApiModelProperty(description = "业务类型")
    @Column("business_type")
    private String businessType;
    @ApiModelProperty(description = "身份证号码")
    @Column("id_number")
    private String idNumber;
    @ApiModelProperty(description = "联系方式")
    @Column("phone")
    private String phone;
    @ApiModelProperty(description = "家庭地址（详细到门牌号）")
    @Column("address")
    private String address;
    @ApiModelProperty(description = "入党时间")
    @Column("party_membership_time")
    private Date partyMembershipTime;

    @Column("province")
    @Comment("省份")
    @ApiModelProperty(description = "省份")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String province;

    @Column("city")
    @Comment("市")
    @ApiModelProperty(description = "市")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String city;

    @Column("district")
    @Comment("区")
    @ApiModelProperty(description = "区")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String district;

    @Column("county")
    @Comment("街道")
    @ApiModelProperty(description = "街道")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String county;

    @Column("community")
    @Comment("社区")
    @ApiModelProperty(description = "社区")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String community;

    @ApiModelProperty(description = "summaryId")
    @Column("summary_id")
    private String summaryId;

    @ApiModelProperty(description = "特殊标签")
    @Column("special_mark")
    private String specialMark;

    @ApiModelProperty(description = "性别")
    @Column("gender")
    private String gender;

    @ApiModelProperty(description = "出生日期")
    @Column("birth_date")
    private String dateOfBirth;

    @ApiModelProperty(description = "创建人")
    @Column("create_by")
    private String createBy;


    @Column("create_date")
    @Comment("添加时间 (Create Date)")
    @ApiModelProperty(description = "添加时间 (Create Date)")
    @ColDefine(type = ColType.DATETIME, width = 50)
    private LocalDateTime createDte;

    @Column("update_date")
    @Comment("修改时间 (Update Date)")
    @ApiModelProperty(description = "修改时间 (Update Date)")
    @ColDefine(type = ColType.DATETIME, width = 50)
    private LocalDateTime updateDate;


    @Column("update_by")
    @Comment("更新者 (Updated By)")
    @ApiModelProperty(description = "更新者 (Updated By)")
    @ColDefine(type = ColType.VARCHAR, width = 50)
    private String updateBy;

}
